{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "nbsphinx": "hidden"
   },
   "source": [
    "# Periodic Signals\n",
    "\n",
    "*This Jupyter notebook is part of a [collection of notebooks](../index.ipynb) in the bachelors module Signals and Systems, Comunications Engineering, Universität Rostock. Please direct questions and suggestions to [Sascha.Spors@uni-rostock.de](mailto:Sascha.Spors@uni-rostock.de).*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Convolution of a Periodic with an Aperiodic Signal\n",
    "\n",
    "The convolution $y(t) = x(t) * h(t)$ of a periodic signal $x(t)$ with an aperiodic signal $h(t)$ results in a periodic signal. This implies for instance that the output signal $y(t)$ of a linear time-invariant (LTI) system with aperiodic impulse response $h(t)$ is periodic for a periodic input signal $x(t)$. This is shown in the following.\n",
    "\n",
    "The [spectrum $X(j \\omega)$ of a periodic signal](spectrum.ipynb#Fourier-Transform) $x(t)$ is given as\n",
    "\n",
    "\\begin{equation}\n",
    "X(j \\omega) = X_0(j \\omega) \\cdot {\\bot \\!\\! \\bot \\!\\! \\bot} \\left( \\frac{\\omega T_\\text{p}}{2 \\pi} \\right) \n",
    "\\end{equation}\n",
    "\n",
    "where $X_0(j \\omega) = \\mathcal{F} \\{ x_0(t) \\}$ denotes the Fourier transform of one period $x_0(t)$ of the periodic signal. The spectrum $Y(j \\omega) = \\mathcal{F} \\{ x(t) * h(t) \\} = X(j \\omega) \\cdot H(j \\omega)$ is computed by introducing the spectrum $X(j \\omega)$ of the periodic signal and $H(j \\omega)$ of the aperiodic signal (e.g. impulse response) \n",
    "\n",
    "\\begin{align}\n",
    "Y(j \\omega) &= X_0(j \\omega) \\cdot {\\bot \\!\\! \\bot \\!\\! \\bot} \\left( \\frac{\\omega T_\\text{p}}{2 \\pi} \\right) \\cdot H(j \\omega) \\\\\n",
    "&= \\frac{2 \\pi}{T_\\text{p}} \\sum_{\\mu = - \\infty}^{\\infty} X_0 \\left( j \\, \\mu \\frac{2 \\pi}{T_\\text{p}} \\right) \\cdot\n",
    "H \\left( j \\, \\mu \\frac{2 \\pi}{T_\\text{p}} \\right) \\cdot \\delta \\left( \\omega - \\mu \\frac{2 \\pi}{T_\\text{p}} \\right)\n",
    "\\end{align}\n",
    "\n",
    "where the [definition of the Dirac comb](spectrum.ipynb#The-Dirac-Comb) and the multiplication property of the Dirac impulse was used to derive the last equality. The last equality shows that the spectrum $Y(j \\omega)$ is a line spectrum. From this it can be concluded that the signal $y(t)$ has to be periodic. Hence, the convolution of a periodic with an aperiodic signal results in a periodic signal. \n",
    "\n",
    "The Fourier series expansion of the convolution $y(t) = x(t) * h(t)$ can be deduced by considering the [relation between the spectrum of a periodic signal and the Fourier series](fourier_series.ipynb#Relation-between-Spectrum-and-Fourier-Series)\n",
    "\n",
    "\\begin{equation}\n",
    "y(t) = \\frac{1}{T_\\text{p}} \\sum_{n = - \\infty}^{\\infty} X_0 \\left( j \\, n \\frac{2 \\pi}{T_\\text{p}} \\right) \\cdot\n",
    "H \\left( j \\, n \\frac{2 \\pi}{T_\\text{p}} \\right)   e^{j n \\frac{2 \\pi}{T_\\text{p}} t}\n",
    "\\end{equation}"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "nbsphinx": "hidden"
   },
   "source": [
    "**Copyright**\n",
    "\n",
    "This notebook is provided as [Open Educational Resource](https://en.wikipedia.org/wiki/Open_educational_resources). Feel free to use the notebook for your own purposes. The text is licensed under [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/), the code of the IPython examples under the [MIT license](https://opensource.org/licenses/MIT). Please attribute the work as follows: *Sascha Spors, Continuous- and Discrete-Time Signals and Systems - Theory and Computational Examples*."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
